package com.xyht.sca_s.student_manage_system.modules.produtProcurement.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xyht.sca_s.student_manage_system.common.commonReturn.ResponseResult;
import com.xyht.sca_s.student_manage_system.modules.produtProcurement.entity.SmsProductProcurementApproval;
import com.xyht.sca_s.student_manage_system.modules.produtProcurement.entity.dto.SmsProductProcurementAllowDto;
import com.xyht.sca_s.student_manage_system.modules.produtProcurement.entity.dto.SmsProductProcurementCancelDto;
import com.xyht.sca_s.student_manage_system.modules.produtProcurement.entity.dto.SmsProductProcurementDto;
import com.xyht.sca_s.student_manage_system.modules.produtProcurement.entity.dto.SmsProductProcurementHistoryReq;

import javax.servlet.http.HttpServletResponse;
import java.util.concurrent.Future;

/**
 * <p>
 * 大宗商品审批表 服务类
 * </p>
 *
 * @author XYHT
 * @since 2023-05-22
 */
public interface SmsProductProcurementApprovalService extends IService<SmsProductProcurementApproval> {

    ResponseResult addProductProcurement(String userId, SmsProductProcurementDto smsProductProcurementDto);
    ResponseResult cancelProductProcurement(String userId, SmsProductProcurementCancelDto cancelDto);
    ResponseResult allowProductProcurement(String userId, SmsProductProcurementAllowDto allowDto);
    ResponseResult getProductProcurementDetail(String userId, String examineId);
    ResponseResult getProductProcurementList(String userId,Integer examine_type,Integer pageNum,Integer pageSize,String search_str);
    ResponseResult getProductOriginSettingProcess();
    Future<ResponseResult> tableDownload(String apply_id, HttpServletResponse response);
    ResponseResult getAllProductProcurementList(Integer allowStatus,String applyName,String applyDepartment,Integer pageSize,Integer pageNum);
    Future<ResponseResult> exportExamineHistoryList(SmsProductProcurementHistoryReq req, HttpServletResponse response);
}
